home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Various / Miami Amigos 90-01 (1990)(Miami Amiga Users Group)(PD)[WB].zip / Miami Amigos 90-01 (1990)(Miami Amiga Users Group)(PD)[WB].adf / Utilities / Textra.Doc < prev    next >
Text File  |  1990-01-18  |  20KB  |  472 lines

  1.    This document describes TEXTRA, a very user-friendly text editor.
  2. TEXTRA makes no claim at being the most powerful editor around, or the
  3. fastest, smallest or any-OTHER-est.  Just pretty easy to use, that's
  4. the goal.  And free.
  5.  
  6.    TEXTRA is public domain.  I request, however, that this README file
  7. accompany the executable, if possible, if passed around.
  8.  
  9.    If you are using TEXTRA to read this file, just point the mouse
  10. at the arrow in the lower-right corner, and hold the left mouse button
  11. down for a little.  You'll know when to let up.
  12.  
  13.    TEXTRA was written in JForth Professional V2.0, which I recommend
  14. highly.
  15.                                             Thanx,  Mike H.
  16. 26-Apr-89 executable size 60148
  17. 29-May-89   "    "    "   60864
  18. 22-Jul-89   "    "    "   61080
  19.  
  20. ---------------------------------------------------------------------------
  21.  
  22.  
  23.               T A B L E     O F     C O N T E N T S
  24.              ---------------------------------------
  25.  
  26. 1.  INVOKING TEXTRA
  27.     1.1  Invoking from Workbench or CLI
  28.     1.2  Optional filename argument usage
  29.     1.3  Shift-Double-clicking with "project"-type icons
  30.     1.4  TEXTRA as the Default Tool for "Project"-type icons
  31. 2.  THE TEXTRA CURSOR
  32.     2.1  Cursor appearance
  33.     2.2  Positioning the cursor with the keyboard arrow keys
  34.     2.3  Positioning the cursor with the mouse
  35. 3.  ENTERING TEXT INTO THE DOCUMENT
  36.     3.1  Inserting text at the cursor location
  37.     3.2  The RETURN key
  38.     3.3  The BACKSPACE key
  39.     3.4  The DEL key
  40.     3.5  The TAB key
  41.     3.6  The control-key filter and defeat feature (Function key F2)
  42. 4.  SELECTING A RANGE OF TEXT
  43.     4.1  Using the mouse to select a range of characters
  44.     4.2  Selecting text by double-clicking
  45.     4.3  Operations on selected ranges
  46.     4.4  Selecting more than the visible screen
  47. 5.  VIEWING PAGES
  48.     5.1  The vertical scroll arrow gadgets
  49.     5.2  The vertical scroll thumb gadget
  50.     5.3  Scrolling the page with the keyboard arrow keys
  51. 6.  TEXTRA WINDOWS
  52.     6.1  Limitations
  53.     6.2  The title bar
  54.     6.3  The close gadget
  55.     6.3  The sizing gadget
  56.     6.4  The Window-Size-Toggle feature (Function key F1)
  57. 7.  TEXTRA MENUS
  58.     7.1  Accessing the menus
  59.     7.2  The "Project" menu
  60.          7.2.1  Open A File...
  61.          7.2.2  Open By Name...
  62.          7.2.3  New File
  63.          7.2.4  Revert To Saved
  64.          7.2.5  Save
  65.          7.2.6  Save As...
  66.          7.2.7  Save All Files
  67.          7.2.8  Close File
  68.          7.2.9  About TEXTRA...
  69.          7.2.10 Quit
  70.     7.3  The "Edit" menu
  71.          7.3.1  Cut
  72.          7.3.2  Copy
  73.          7.3.3  Paste
  74.          7.3.4  Find...
  75.          7.3.5  Find Next
  76.          7.3.6  Replace...
  77.          7.3.7  Replace Next
  78.          7.3.8  Go to Line...
  79.          7.3.9  Set TAB Width...
  80.     7.4  The "Windows" menu
  81.          7.4.1  Dynamically-changing items
  82.          7.4.2  Additional information
  83. 8.  TEXTRA GENERAL INFORMATION
  84.     8.1  TEXTRA's use of Path and File names
  85.     8.2  String Gadget Shortcuts
  86.     8.3  TEXTRA String Gadgets and the RETURN key
  87.     8.4  TEXTRA Requesters
  88.  
  89. ---------------------------------------------------------------------------
  90.  
  91.  
  92. 1. INVOKING TEXTRA
  93.  
  94. 1.1 TEXTRA, if double-clicked from WorkBench, will ask you to
  95. select a filename soon after opening its first window.  TEXTRA
  96. may be launched from CLI or SHELL with multiple filenames
  97. as follows:
  98.  
  99.     1> TEXTRA <filename1> <filename2> ... <filenameX>
  100.  
  101.             OR
  102.  
  103.     1> RUN TEXTRA <filename1> <filename2> ... <filenameX>
  104.  
  105. 1.2 If the optional filenames are not given, TEXTRA will ask you to
  106. select one, as if double-clicked.  Select "CANCEL" if you do not
  107. want to edit an existing file; the default name "Untitled" will
  108. be assigned.
  109.  
  110. 1.3 From Workbench, "Project" icons that are also selected when TEXTRA
  111. is "SHIFT-Double-Clicked" will each be opened in their respective window.
  112.  
  113. 1.4 A "Project" icon that has TEXTRA specified in its "Default Tool"
  114. field will invoke TEXTRA, when double-clicked, and be opened in its
  115. own window.
  116.  
  117. ---------------------------------------------------------------------------
  118.  
  119.  
  120. 2. THE TEXTRA CURSOR
  121.  
  122. 2.1 The current cursor location (where text will be inserted) is
  123. represented by a thin line, of a different color than either text
  124. or background.  If placed inside a text string, the cursor is
  125. always BETWEEN two characters, showing clearly the sections that will
  126. "spread apart" if something is typed into the window.
  127.  
  128. 2.2 The cursor may be moved with the "arrow" keys on the keyboard; a
  129. SHIFT-left-arrow or SHIFT-right-arrow will move the cursor to the
  130. beginning or end of the current line, respectively.
  131.  
  132. 2.3 The cursor may also be positioned by clicking the LEFT MOUSE
  133. BUTTON, while the mouse cursor is over a part of the windows text area.
  134.  
  135. ---------------------------------------------------------------------------
  136.  
  137.  
  138. 3. ENTERING TEXT INTO THE DOCUMENT
  139.  
  140. 3.1 As keys are typed at the keyboard, they are entered in the file
  141. at the current cursor location, and the cursor is advanced by one.
  142.  
  143. 3.2 The RETURN key inserts a new line, and moves the cursor to the
  144. beginning of it.
  145.  
  146. 3.3 The BACKSPACE deletes the character to the immediate left of the
  147. cursor.  If the cursor is at the leftmost column, the preceeding newline
  148. is removed and the cursor moves up one line.
  149.  
  150. 3.4 The DELETE key removes the character to the immediate right of the
  151. cursor.  If the cursor is at the end of a line, the newline is removed
  152. and the next line moves up to merge with the current.
  153.  
  154. 3.5 The TAB key advances the cursor to the next column that is an
  155. even multiple of the TAB width value (discussed later).
  156.  
  157. 3.6 Normally, TEXTRA will not allow control characters into the
  158. window, permitting only visible or white-space characters.  This
  159. feature can be temporarily defeated, for 1 character, by pressing F2.
  160. Following F2, the next character will be accepted into the window
  161. unfiltered.
  162.  
  163. ---------------------------------------------------------------------------
  164.  
  165.  
  166. 4. SELECTING A RANGE OF TEXT
  167.  
  168. 4.1 It is possible to mark a series of characters for the next
  169. operation by "dragging" with the mouse.  The sequence is:
  170.  
  171.   a. Position the mouse over the 1st character of the desired series.
  172.   b. Press the left mouse button and, while holding it down, move the
  173.      mouse to the last character of the series (even if it is on another
  174.      line).  Note that the characters between that clicked-on and wherever
  175.      you move the mouse become "highlighted" (selected).
  176.   c. Release the left mouse button when the desired range of characters
  177.      is selected.
  178.  
  179. 4.2 Any series of non-white characters will become selected if the
  180. LEFT MOUSE BUTTON is double-clicked while the mouse cursor is
  181. positioned over them.
  182.  
  183. 4.3 When a range of text is selected, a subsequent operation will
  184. affect the entire selected area.  For example, if a key is typed while
  185. a range is selected, the range will be cut from the file, replaced by
  186. that key.  Other examples are the BACKSPACE and DEL keys, which both
  187. act to simply delete any selected area.  Certain items under the EDIT
  188. menu, described later, also operate on any current range.
  189.  
  190. 4.4 If, while selecting text, the mouse is moved near the bottom or top
  191. of the window, available text in the appropriate direction will scroll
  192. into view, becoming selected in the process.  Therefore, a select range
  193. can extend past the visible limits of the window.
  194.  
  195. ---------------------------------------------------------------------------
  196.  
  197.  
  198. 5. VIEWING PAGES
  199.  
  200. 5.1 The easiest method for moving through the file is to use the vertical
  201. scroll bar on the right side of the window.  Single clicks of the left
  202. mouse button on the arrows at either end move the document vertically,
  203. one line at a time.  Holding the left button down on either yields a
  204. continuous scroll.
  205.  
  206. 5.2 The "thumb" in the middle of the scroll bar not only indicates the
  207. visible-page-area relative to the total-file-size (by it's height),
  208. but also the position within the file (by its vertical positioning).
  209. It can also be "selected" with the left mouse button and moved as
  210. a "coarse adjust".  The area immediately above and below the "thumb"
  211. may be clicked with the left button as a "page-scroll" mechanism.
  212.  
  213. 5.3 Another method by which text may be scrolled into view is to move
  214. the cursor, via the keyboard "arrow" keys, to either the top or bottom
  215. of the visible window.  Attempts to move the cursor "off the window"
  216. will cause text in that direction to scroll.
  217.  
  218. ---------------------------------------------------------------------------
  219.  
  220.  
  221. 6. TEXTRA WINDOWS
  222.  
  223. 6.1 TEXTRA allows any number of windows, limited by the amount of
  224. memory in your computer (probably the 512K available CHIP ram
  225. in MOST Amigas!).  Textra lines can be up to 255 characters long,
  226. number of lines limited by your total available memory (entire file
  227. is kept in ram, FAST is grabbed first).
  228.  
  229. 6.2 The title of each TEXTRA window is set to the full-pathname
  230. of the file that was read in (or created).  This is also the name
  231. of the file that will be written during a SAVE operation (unless
  232. the "SAVE AS..." menu option is chosen, discussed later).  If the
  233. file has been modified since last saved, the filename will be
  234. preceeded by a '*'.
  235.  
  236. 6.3 Each window includes a standard Intuition close gadget, which
  237. performs the same action as the "CLOSE FILE" menu option.  See the
  238. discussion on "CLOSE FILE" for more information.
  239.  
  240. 6.4 The "sizing" gadget in the lower-right hand corner of each window
  241. may be used to adjust the dimensions of that window, up to the
  242. full-screen limitations of the Workbench.
  243.  
  244. 6.5 Function key F1 may be used as a "window-size-toggle" between
  245. default size (when F1 was first hit) and full-screen (as per current
  246. Preferences screen resolution settings).  This is particularly
  247. useful when Workbench is in 400 line interlace.
  248.  
  249. (NOTE: if F1 is used to expand the screen, and the size gadget is
  250.        then clicked without actually changing size, the default-size 
  251.        becomes equal to the full-screen-size.  This will make F1
  252.        non-functional until the size gadget is used to actually
  253.        change window size.  To avoid this, don't click on the
  254.        sizing gadget when the window is full-size.  Use F1 to
  255.        get back to normal size).
  256.  
  257. (PROGRAMMERS NOTE: Sorry about all the commotion on the screen when
  258.        you hit F1...after all the gyrations, it ends up where it oughta
  259.        be.  I don't see how, under Intuition, to do this any cleaner...
  260.        Must this be a two-step process (combinations of MoveWindow()
  261.        and SizeWindow()), with all the extra drawing and overhead (from
  262.        layers?) a necessary evil?  Gurus???  Anybody listening??? Yoo-Hoo!!)
  263.  
  264. ---------------------------------------------------------------------------
  265.  
  266.  
  267. 7. TEXTRA MENUS
  268.  
  269. 7.1 3 menus are available and present themselves when the RIGHT
  270. MENU BUTTON is depressed and held.  Some menu items may also
  271. be activated by simultaneously pressing the RIGHT AMIGA key
  272. and the one that is specified in the menu item text.
  273.  
  274. 7.2 The "Project" Menu
  275.  
  276. 7.2.1 OPEN A FILE... opens a new window with a full file-selector
  277. requester and buttons that allow quick access to the top of DF0:,
  278. DF1:, VD0: and RAM:.  The PARENT button changes the current directory
  279. to the level above the one being displayed.  The KEYBOARD button
  280. presents the user with a string requester into which a file or
  281. directory specification may be typed.  The CANCEL button exits the
  282. requester with no other action while the OK button enters the file
  283. or directory selected in the list box (the same as CANCEL if nothing
  284. is selected).  Double-clicking one of the names performs the same
  285. action as the OK button.
  286.  
  287. 7.2.2 OPEN BY NAME... opens a new window, then presents a string
  288. requester for specifying a filename (directory names are invalid
  289. in this requester) from the keyboard.  This bypasses the directory
  290. scan for the list of names, which can take time on large directories,
  291. especially on floppy drives.  Note that the current directory of
  292. the requester is that of the spawning window.
  293.  
  294. 7.2.3 NEW FILE opens a window without specifying a filename; the
  295. default name "Untitled" is assigned, at the directory level of
  296. the spawning window.
  297.  
  298. 7.2.4 REVERT TO SAVED causes the read-in version of a the selected
  299. file to be discarded, replaced by the version that was last-saved
  300. to disk.  A verification requester is presented to make sure this
  301. is not done accidently.
  302.  
  303. 7.2.5 SAVE causes the currently-selected file to be written to disk,
  304. if modified.  If the file has not been changed since last-saved (no
  305. '*' before the title), the write is not performed.
  306.  
  307. 7.2.6 SAVE AS... allows saving the currently selected file under a
  308. different name.  After this operation, the title bar will contain
  309. the new name, and it will have been created on disk.  If the
  310. specified file already exists, the user is warned and given a
  311. chance to abort.  The "USE LIST" button will present a full
  312. file-requester through which an existing file may be selected with
  313. the mouse.  This requester is very similar in operation to the
  314. "OPEN FILE..." requester; all buttons work the same, except the
  315. OK button will overwrite the selected file (as does double-clicking
  316. a filename).
  317.  
  318. 7.2.7 SAVE ALL FILES causes all files that have been modified and not
  319. saved to be written to disk.
  320.  
  321. 7.2.8 CLOSE FILE will check if the file has been modified but not
  322. saved and warn the user if so.  Note that closing TEXTRA's last window
  323. will cause it to exit; a requester will notify you if you are closing
  324. the last window and give you the chance to abort.
  325.  
  326. 7.2.9 ABOUT TEXTRA is self-explanatory.
  327.  
  328. 7.2.10 QUIT will exit TEXTRA, closing all files in the process.  All
  329. files that have been modified but not saved will issue a notification
  330. requester, providing the opportunity to save at that time.
  331.  
  332. 7.3 The "Edit" Menu
  333.  
  334. 7.3.1 CUT removes the selected range of characters from the 
  335. currently-selected file, but saves them in the TEXTRA clip area
  336. (TEXTRA does not interface with the standard Amiga Clipboard
  337. Device...future versions may do so).  The previous contents of
  338. the TEXTRA clip area are lost.  If there is no select range,
  339. no action is performed.
  340.  
  341. 7.3.2 COPY moves the selected range of characters of the 
  342. currently-selected file to the TEXTRA clip area, but does not
  343. remove them from the file.  The previous contents of the TEXTRA
  344. clip area are lost.  If there is no select range, no action
  345. is performed.
  346.  
  347. 7.3.3 PASTE inserts whatever is in the TEXTRA clip area into the
  348. currently-selected file, at the current cursor location.  If a select
  349. range is active in this file, it is deleted before the insertion takes
  350. place.  There is no effect on the contents of the TEXTRA clip area.
  351.  
  352. 7.3.4 FIND... presents a string requester, prompting for the string
  353. to search for, ignoring character case.  The string gadget will, as
  354. a default, contain the previous string searched for IN THAT WINDOW
  355. (empty if none).  However, if a range of characters is selected that
  356. is ALL ON ONE LINE, it will supercede any previously-searched-for
  357. string as the default for the string gadget.  The search begins just
  358. past the current cursor location or selected range of characters.
  359.  
  360. 7.3.5 FIND NEXT conducts another case-insensitive search for the same
  361. text string that had previously been searched for.  If no search had
  362. yet been conducted the "FIND..." requester is presented.
  363.  
  364. 7.3.6 REPLACE... presents a double-string-requester, prompting for
  365. both the string to conduct a case-insensitive search for, and a second
  366. string, to replace the first with, when found.  The RETURN key will
  367. toggle the selected string gadget.  The user may optionally replace
  368. all instances of the found string (with the "ALL!" button), just the
  369. next one found (via the "ONCE" button), or abort (via "CANCEL").  The
  370. search begins just past the current cursor location or selected range
  371. of characters.
  372.  
  373. 7.3.7 REPLACE NEXT conducts another "REPLACE" operation, using the
  374. same strings that were used last time.  If none exist, the "REPLACE"
  375. requester is presented.
  376.  
  377. 7.3.8 GO TO LINE... presents a string requester prompting for the
  378. desired line number.  First line of file is line 1.
  379.  
  380. 7.3.9 SET TAB WIDTH... provides a way of changing the default TAB
  381. width (8).  A string requester is presented, with the currently
  382. installed size.  Maximum width accepted is 16.  The setting applies
  383. to all windows.
  384.  
  385. 7.4 The "Windows" Menu
  386.  
  387. 7.4.1 One item exists in the "WINDOWS" menu for each open file, the
  388. menu item text being the same as the title bar for the associated
  389. window.  Selecting an item makes it the current window, if not
  390. already.
  391.  
  392. 7.4.2 Additionally, the text includes the "*" character before the
  393. filename if the file has been modified since last written to disk.
  394. A checkmark preceeds the item representing the current file.
  395.  
  396. ---------------------------------------------------------------------------
  397.  
  398.  
  399. 8. TEXTRA GENERAL INFORMATION
  400.  
  401. 8.1 TEXTRA always fully expands a specified file or directory name
  402. and uses that form to again find the file, if necessary.  For example,
  403. you may have typed in "DF1:MyFile" as the filename, but the window
  404. title will substitute the name of the volume, possibly "MyDisk:MyFile".
  405. This is almost always desirable, because if TEXTRA saved "DF1:", you
  406. might unknowingly save it to the wrong disk, just because you switched
  407. the disk in that drive.  TEXTRA will ask you specifically for the same
  408. name.
  409.    The only situation you should be aware of is WHEN YOU HAVE TWO
  410. DISKS OF THE SAME NAME in your system.  In this case, AmigaDOS can
  411. sometimes choose the wrong disk when TEXTRA passes the full-pathname
  412. to it.
  413.   In the above example, we could save it to the wrong disk if the disk
  414. in DF0: is also named "MyDisk:" (a backup, perhaps???).  This is not
  415. caused by TEXTRA, but can happen anytime in AmigaDOS that you use the
  416. full-pathname to specify a file.
  417.  
  418. 8.2 Intuition provides two String Gadget shortcuts that can be
  419. useful to the TEXTRA user.  TEXTRA string gadgets that provide
  420. a default text string when they appear will revert back to this
  421. string whenever "Right Amiga-Q" is pressed.  The "Right Amiga-X"
  422. combination will clear any displayed string.
  423.  
  424. 8.3 For all string gadgets but one, the RETURN key will perform
  425. the same action  as the "OK" button.  The one exception is the
  426. "REPLACE" double-string requester, where the RETURN key toggles between
  427. the two string gadgets.
  428.  
  429. 8.4 TEXTRA Requesters are attached to (drawn in) the window that they
  430. have been spawned from.  The advantage is that multiple requesters
  431. are possible...you can select and work in another file even if
  432. the previous window is waiting for you to answer a question.  Every
  433. window can, in fact, have an open requester.  Note that, if your
  434. window is too small, you may have to expand its size to inter-operate
  435. with a given requester.  Unfortunately, since the Intuition requester
  436. mechanism locks out my console events from that window, I can't process
  437. the F1 key, and you have to do this with the mouse.
  438.   (Intuition should give the application a looksee at the keys before
  439. using them in a string gadget, throwing them away or whatever.  The
  440. application could reply with a boolean, whether it wants the requester
  441. to use it or not.  This could even default to NO_BOOLEAN if not specified
  442. previously by the caller as a requester mode.  Maybe a REQ_KEY_VERIFY
  443. event. Oh well, let's re-design Intuition another time).
  444.  
  445. ---------------------------------------------------------------------------
  446.  
  447. 29-May-89...
  448.  
  449. 1. Disk Buttons dynamically allocate and arrange on
  450.    OPEN FILE requester, up to 6 devices.
  451.  
  452. 2. Screen update algorithm changed to smoother "JAM2"
  453.    overwrite from top-to-bottom (instead of clearscreen()
  454.    followed by JAM1 paint).  While screen update time is
  455.    SLIGHTLY slower (must RectFill() to right-screen-edge),
  456.    it removes all signs of "flashing" text, which would occur
  457.    at various places (even during normal typing).
  458.  
  459. ---------------------------------------------------------------------------
  460.  
  461. 22-Jul-89... Fixed.
  462.  
  463. 1. If icons were double-clicked (launching TEXTRA),
  464.    some stuff would not get UnLock()'ed and the disks would stay
  465.    around on the WorkBench.
  466.  
  467. 2. When lines were read-in from a file, there was some unecessary
  468.    filtering of control characters that were past the visible
  469.    characters.  Would cause problems like losing FORM-FEEDs at the
  470.    end of lines and such. (Thanx, Phil & Kim)
  471.  
  472.